//
//  AtomicProperty.m
//  BCLockDemo
//
//  Created by Shine on 2020/11/24.
//  Copyright © 2020 YW. All rights reserved.
//

#import "AtomicProperty.h"

@implementation AtomicProperty

/*
 ARC的底层本质还是MRC,只是系统替我们在合适的位置去做了retain、copy、release的工作
 属性的修饰符就是作用到setter、getter方法的内部逻辑上的
 strong/weak 是在ARC之后才出来的 strong和retain作用一样
 */
/*--------- atomic --------*/
//- (void)setName:(NSString *)name
//{
//    // 加锁
//    _name = name;
//    // 解锁
//}

//- (NSString *)name
//{
// 加锁
//    return _name;
// 解锁
//}
/*--------- atomic --------*/

/*--------- retain --------*/
//- (void)setName:(NSString *)name
//{
//    if (_name != name) {
//       [_name release];
//       _name = [name retain];
//    }
//}

//- (NSString *)name
//{
//    return _name;
//}
/*--------- retain --------*/

/*--------- copy --------*/
//- (void)setName:(NSString *)name
//{
//    if (_name != name) {
//       [_name release];
//       _name = [name copy];
//    }
//}

//- (NSString *)name
//{
//    return _name;
//}
/*--------- copy --------*/

@end
